# -*- coding: utf-8 -*-

"""
Py40 PyQt5 tutorial

In this example, we position two push
buttons in the bottom-right corner
of the window.

author: Jan Bodnar
website: py40.com
last edited: January 2015
"""

import sys
from PyQt5.QtWidgets import (QWidget, QPushButton,
    QHBoxLayout, QVBoxLayout, QApplication)


class Example(QWidget):
#在这个例子中，我们使用HBoxLayout和QVBoxLayout并添加伸展因子，在窗口的右下角显示两个按钮。
    def __init__(self):
        super().__init__()

        self.initUI()


    def initUI(self):

        okButton = QPushButton("OK")  #ok按钮
        cancelButton = QPushButton("Cancel")  #cancel按钮
#我们创建一个水平布局和添加一个伸展因子和两个按钮。两个按钮前的伸展增加了一个可伸缩的空间。这将推动他们靠右显示。
        hbox = QHBoxLayout()   #框布局实例化
        hbox.addStretch(1)                         #这个不知道是干啥的，要查一下
        hbox.addWidget(okButton)  #ok放进去
        hbox.addWidget(cancelButton)  #cancel放进去
#创建一个垂直布局，并添加伸展因子，让水平布局显示在窗口底部
        vbox = QVBoxLayout()
        vbox.addStretch(1)
        vbox.addLayout(hbox)

        self.setLayout(vbox)

        self.setGeometry(300, 300, 300, 150)
        self.setWindowTitle('Buttons')
        self.show()


if __name__ == '__main__':

    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())